<?php

class Hoc_vien extends Eloquent {

    public $timestamps = false;
    protected $guarded = array();
    protected $table = 'hoc_viens';
    public static $rules = array(
        'ma_hv' => '',
        'sbd' => 'required',
        'ho_hv' => 'required',
        'ten_hv' => 'required',
        'ngay_sinh_hv' => '',
        'gioi_tinh_hv' => '',
        'dan_toc_hv' => '',
        'email_hv' => '',
        'sdt_hv' => '',
        'dia_chi_hv' => '',
        'quoc_tich_hv' => '',
        'noi_sinh_hv' => '',
        'nam_tot_nghiep' => '',
        'hinh_thuc_dao_tao' => '',
        'KhoaThi_Id' => '',
        'ChungChi_Id' => '',
        'diem_lt' => array('numeric','Between:0,10'),
        'diem_th' => array('numeric','Between:0,10'),
        'ket_qua' => '',
        'diem_tb' => array('numeric','Between:0,10'),
        'xep_loai' => '',
        'so_hieu_bang' => '',
        'so_so_cap_chung_chi' => '',
        'so_quyet_dinh_tot_nghiep' => '',
        'TK_NhapDiem_Id' => 'required'
    );

    public function tach_ho_ten($hoten) {
        $ho_ten = $hoten;
        // Tách chuỗi thành mảng.
        $_ho_ten = explode(' ', $ho_ten);
        // Lấy họ tên là phần tử đầu tiên của mảng.
        $results['ho'] = current($_ho_ten);
        // Lấy tên đệm là phần tử tiếp theo của mảng
        $results['ten_dem'] = next($_ho_ten);
        // Nếu tên nhập vào chỉ có 2 chữ thì tên đệm trống
        if (count($_ho_ten) == 2) {
            $ten_dem = '';
        }
        // Nếu tên nhập vào có 4 chữ trở lên lấy tên đệm là phần tử tiếp theo từ phần tử ở biến $ten_dem đã lấy ở trc.
        if (count($_ho_ten) > 3) {
            $ten_dem .= ' ' . next($_ho_ten);
        }
        // Lấy tên là phần tử cuối cùng của mảng
        $results['ten'] = end($_ho_ten);
        $results['hodem'] = $results['ho'] . ' ' . $results['ten_dem'];
        return $results;
    }

    public function ds_hocvien() {
        $results = DB::table('hoc_viens')
                ->leftJoin('khoa_this', 'hoc_viens.KhoaThi_Id', '=', 'khoa_this.id')
                ->leftJoin('hoi_dong_this', 'khoa_this.HoiDongThi_Id', '=', 'hoi_dong_this.id')
                ->leftJoin('chung_chis', 'hoc_viens.ChungChi_Id', '=', 'chung_chis.id')
                ->select('hoc_viens.id', 'hoc_viens.ma_hv', 'hoc_viens.sbd', 'hoc_viens.ho_hv', 'hoc_viens.ten_hv', 'hoc_viens.ngay_sinh_hv', 'khoa_this.ma_khoa_thi', 'hoi_dong_this.ten_hoi_dong_thi','hoc_viens.so_hieu_bang','hoc_viens.so_so_cap_chung_chi','hoc_viens.so_quyet_dinh_tot_nghiep')
                ->get();
        return $results;
    }

     public function ds_hocvien_dau() {
        $results = DB::table('hoc_viens')
                ->leftJoin('khoa_this', 'hoc_viens.KhoaThi_Id', '=', 'khoa_this.id')
                ->leftJoin('hoi_dong_this', 'khoa_this.HoiDongThi_Id', '=', 'hoi_dong_this.id')
                ->leftJoin('chung_chis', 'hoc_viens.ChungChi_Id', '=', 'chung_chis.id')
                ->select('hoc_viens.id', 'hoc_viens.ma_hv', 'hoc_viens.sbd', 'hoc_viens.ho_hv', 'hoc_viens.ten_hv', 'hoc_viens.ngay_sinh_hv', 'khoa_this.ma_khoa_thi', 'hoi_dong_this.ten_hoi_dong_thi','hoc_viens.so_hieu_bang','hoc_viens.so_so_cap_chung_chi','hoc_viens.so_quyet_dinh_tot_nghiep')
                ->where('ket_qua','1')
                ->get();
        return $results;
    }

    public function get_tthv_mhv($mahv) {
        $results = DB::table('hoc_viens')
                ->leftJoin('khoa_this', 'hoc_viens.KhoaThi_Id', '=', 'khoa_this.id')
                ->leftJoin('hoi_dong_this', 'khoa_this.HoiDongThi_Id', '=', 'hoi_dong_this.id')
                ->leftJoin('chung_chis', 'hoc_viens.ChungChi_Id', '=', 'chung_chis.id')
                ->where('hoc_viens.ma_hv', '=', $mahv)
                ->get();
        return $results;
    }

    public function get_ketquahocvien($sbd, $makt, $ngaythi) {
        $results = DB::table('hoc_viens')
                ->leftJoin('khoa_this', 'hoc_viens.KhoaThi_Id', '=', 'khoa_this.id')
                ->leftJoin('hoi_dong_this', 'khoa_this.HoiDongThi_Id', '=', 'hoi_dong_this.id')
                ->leftJoin('chung_chis', 'hoc_viens.ChungChi_Id', '=', 'chung_chis.id')
                ->where('hoc_viens.sbd', '=', $sbd)
                ->where('khoa_this.ma_khoa_thi', '=', $makt)
                ->where('khoa_this.ngay_thi', '=', $ngaythi)
                ->get();
        return $results;
    }

    public function get_vanbanghocvien($shvb, $trinhdo) {
        $results = DB::table('hoc_viens')
                ->leftJoin('khoa_this', 'hoc_viens.KhoaThi_Id', '=', 'khoa_this.id')
                ->leftJoin('hoi_dong_this', 'khoa_this.HoiDongThi_Id', '=', 'hoi_dong_this.id')
                ->leftJoin('chung_chis', 'hoc_viens.ChungChi_Id', '=', 'chung_chis.id')
                ->where('hoc_viens.so_hieu_bang', '=', $shvb)
                ->where('hoc_viens.ket_qua', '=', '1')
                ->where('chung_chis.id', '=', $trinhdo)
                ->select('khoa_this.ngay_thi', 'hoc_viens.ho_hv', 'hoc_viens.ten_hv', 'hoc_viens.ngay_sinh_hv', 'hoc_viens.quoc_tich_hv', 'hoc_viens.noi_sinh_hv', 'khoa_this.ma_khoa_thi', 'hoi_dong_this.ten_hoi_dong_thi', 'chung_chis.ten_chung_chi', 'hoc_viens.xep_loai', 'hoc_viens.diem_tb', 'hoc_viens.so_hieu_bang', 'hoc_viens.so_so_cap_chung_chi', 'hoc_viens.so_quyet_dinh_tot_nghiep', 'hoc_viens.diem_lt', 'hoc_viens.diem_th')
                ->get();
        return $results;
    }

}
